#ifndef TABLE_H
#define TABLE_H

#include "vector3d.h"
#include "color.h"
#include "object.h"

class Table : public Object{
	public:
		Table();
		Table(double, const Vector3D &, const Color &, unsigned int);
		~Table();

        unsigned int getType() const {return TABLE;};

		const Vector3D &getCenter() const;

		void draw(bool, bool) const;
		double intersection (const Vector3D&) const;
		Vector3D getNormalAt (const Vector3D&) const;

	private:
		void drawSurface() const;
		void drawBase() const;

		double radius;
		Vector3D center;

		double f(double) const;
};

#endif
